home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / DB_CLIPP / 0643A.ZIP / SETSET.PRG < prev    next >
Text File  |  1987-04-24  |  4KB  |  166 lines

  1.    * SETCOLOR, THIS ALLOWS USER INPUT TO SET THE FIVE COLOR VARIABLES
  2.    * USES PUBLIC VARIABLES clr1,clr2,clr3,clr4,clr5,nclr1,nclr2,nclr3,
  3.    * nclr4,nclr5,dangerclrs ( BLK/RED - DANGER! (file overwrite, etc))
  4.    * Use "SET COLOR TO &clr1/&clr2,&clr3/&clr4,&clr5" IN YOUR MAIN PROGRAM
  5.    * TO RETURN TO THE COLOR VALUES SET HERE
  6.  
  7.    SET TALK OFF
  8.    SET BELL OFF
  9.  
  10.    STORE .F. TO leave
  11.    STORE CHR(30) TO arrowhead
  12.    STORE CHR(179) TO arrowstem
  13.    STORE 51 TO pos
  14.  
  15.    * INITIALIZE nclr1 THRU nclr4 WITH "NORMAL" COLORS, NO BORDER
  16.    STORE clr1 TO nclr1
  17.    STORE clr2 TO nclr2
  18.    STORE clr3 TO nclr3
  19.    STORE clr4 TO nclr4
  20.  
  21.    DO WHILE .T.
  22.     SET COLOR TO &nclr1/&nclr2,&nclr3/&nclr4,&clr5
  23.     CLEAR
  24.  
  25.     * LIST CHOICES (BEFORE LOOP TO INCREASE SPEED)
  26.  
  27.     @ 4,22 SAY 'SET COLOR TO C1 / C2,  C3 / C4,  C5'
  28.     @ 5,pos SAY arrowhead
  29.     @ 6,pos SAY arrowstem
  30.     @ 8,32 SAY ' Color Choices'
  31.     @ 9,32 SAY '---------------'
  32.     SET COLOR TO  /B
  33.     @ 10,34 SAY '1 - BLACK  '
  34.     SET COLOR TO B/W
  35.     @ 11,34 SAY '2 - BLUE   '
  36.     SET COLOR TO G/B
  37.     @ 12,34 SAY '3 - GREEN  '
  38.     SET COLOR TO BG/B
  39.     @ 13,34 SAY '4 - CYAN   '
  40.     SET COLOR TO R/B
  41.     @ 14,34 SAY '5 - RED    '
  42.     SET COLOR TO BR/B
  43.     @ 15,34 SAY '6 - MAGENTA'
  44.     SET COLOR TO GR/B
  45.     @ 16,34 SAY '7 - YELLOW '
  46.     SET COLOR TO W/B
  47.     @ 17,34 SAY '8 - WHITE  '
  48.  
  49.     SET COLOR TO &nclr1/&nclr2,&nclr3/&nclr4,&clr5
  50.  
  51.     @ 20,10 SAY '(Q to Quit, M for Mono, R to Redo screen, S to Save choices)'
  52.     @ 22,13 SAY 'C1, C2 control standard foreground, background colors,'
  53.     @ 23,13 SAY 'C3, C4 control enhanced foreground, background colors,'
  54.     @ 24,25 SAY 'C5 controls border color'
  55.  
  56.     * STORE WORDS TO ENHANCED COLORS EXAMPLE TEXT
  57.     STORE 'ENHANCED COLORS' TO example
  58.  
  59.     DO WHILE .T.
  60.      SET COLOR TO &clr1/&clr2,&clr3/&clr4,&clr5
  61.      @ 1,16 SAY '                                                '
  62.      @ 2,16 SAY ' FOREGROUND COLORS' GET example
  63.      @ 2,34 SAY ' '
  64.      @ 2,50 SAY ' '
  65.      @ 2,51 SAY 'BORDER COLOR '
  66.      @ 3,16 SAY '                                                '
  67.      SET COLOR TO &nclr1/&nclr2,&nclr3/&nclr4,&clr5
  68.      CLEAR GETS
  69.      DO WHILE .T.
  70.       @ 5,pos SAY arrowhead
  71.       @ 6,pos SAY arrowstem
  72.       STORE ' ' TO choice
  73.       @ 19,9 SAY 'Enter color choice, or "<" or ">" to select color variable :';
  74.        GET choice PICTURE "!"
  75.       READ
  76.  
  77.       DO CASE
  78.  
  79.        CASE choice = '<'
  80.         IF  pos <> 36
  81.          @ 5,pos SAY ' '
  82.          @ 6,pos SAY ' '
  83.          STORE pos - 5 TO pos
  84.          STORE VAL(SUBSTR(colornum,4,1)) - 1 TO newnum
  85.          STORE 'clr' + STR(newnum,1) TO colornum
  86.          LOOP
  87.         ELSE
  88.          ? CHR(7)
  89.          LOOP
  90.         ENDIF
  91.  
  92.        CASE choice = '>'
  93.         IF pos <> 56
  94.          @ 5,pos SAY ' '
  95.          @ 6,pos SAY ' '
  96.          STORE pos + 5 TO pos
  97.          STORE VAL(SUBSTR(colornum,4,1)) + 1 TO newnum
  98.          STORE 'clr' + STR(newnum,1) TO colornum
  99.          LOOP
  100.         ELSE
  101.          ? CHR(7)
  102.          LOOP
  103.         ENDIF
  104.  
  105.        CASE choice <> '>' .AND. choice <> '<'
  106.         EXIT
  107.  
  108.       ENDCASE
  109.      ENDDO
  110.      DO CASE
  111.  
  112.       CASE choice = '1'
  113.        STORE ' ' TO &colornum
  114.       CASE choice = '2'
  115.        STORE 'B' TO &colornum
  116.       CASE choice = '3'
  117.        STORE 'G' TO &colornum
  118.       CASE choice = '4'
  119.        STORE 'BG' TO &colornum
  120.       CASE choice = '5'
  121.        STORE 'R' TO &colornum
  122.       CASE choice = '6'
  123.        STORE 'BR' TO &colornum
  124.       CASE choice = '7'
  125.        STORE 'GR' TO &colornum
  126.       CASE choice = '8'
  127.        STORE 'W' TO &colornum
  128.       CASE choice = 'Q'
  129.        SET COLOR TO &clr1/&clr2,&clr3/&clr4,&clr5
  130.        STORE .T. TO leave
  131.        EXIT
  132.       CASE choice = 'M'
  133.        STORE 'W' TO clr1
  134.        STORE ' ' TO clr2
  135.        STORE ' ' TO clr3
  136.        STORE 'W' TO clr4
  137.        STORE ' ' TO clr5
  138.        EXIT
  139.       CASE choice = 'R'
  140.        STORE clr1 TO nclr1
  141.        STORE clr2 TO nclr2
  142.        STORE clr3 TO nclr3
  143.        STORE clr4 TO nclr4
  144.        EXIT
  145.       CASE choice = 'S'
  146. *       SAVE TO UTILFILE
  147. * (SAVE SETTINGS TO A MEMORY FILE)
  148.        EXIT
  149.  
  150.       OTHERWISE
  151.        ? CHR(7)
  152.        LOOP
  153.  
  154.      ENDCASE
  155.      * (choice)
  156.     ENDDO
  157.     * (DO WHILE .T.)
  158.     IF leave
  159.      EXIT
  160.     ENDIF
  161.    ENDDO
  162.    * (DO WHILE .T.)
  163.  
  164.    * EOF - SETCOLOR.PRG
  165.  
  166.